Method and a system of remotely controlling data transfer via a data transfer network

ABSTRACT

To allow a user to transfer data at a higher data transfer rate in a cellular network allocates a user experiences the problem that the bandwidth available to him may vary, and in particular, may not be sufficient to allow the user to download information from the internet. The invention is a system which allows a registered user to transfer identified data, for example, data identified by a particular url, by a user of a cellular network to a remote location, for example, the user&#39;s home computer.

[0001] This invention relates to remotely controlling data transfer via a data transfer network, in particular a cellular network or cellular mobile communications system.

[0002] With the development of present mobile networks and the introduction of new mobile networks, it is possible to access data, for example, from the internet from mobile handsets, eg. using wireless application protocol (WAP) phones. However, the varying distance between a handset and one or more antennas is such that the bandwidth available to users via their handsets cannot be guaranteed to consistently support high bandwidth downloads of data. This can result in the failure of a download, data may be lost, or the download may be interrupted. This situation could have a negative impact on the user perception of the network quality.

[0003] The present invention provides a solution to this problem. The inventors of the present invention have devised a system which allows a mobile handset user to transfer data he wishes to download to a remote location, i.e. a location other than that at which user and handset are located, where the consistency of bandwidth availability is not an issue. For example, the present invention allows a handset user to transfer data using his mobile handset to a personal computer to which he has access and which is connected to the internet. Once downloaded to the remote location, the user may then access the data as and when required.

[0004] According to a first aspect of the invention, there is provided a method of remote data transfer via a data transfer network comprising the steps of:

[0005] storing at a first data processing facility routing data associated with a first terminal for data transfer to a second remote terminal,

[0006] from said first terminal communicating via said first data processing facility data with said network,

[0007] via said network identifying at said second data processing facility data to be transferred to said second remote terminal,

[0008] instructing said second data processing facility via said first data processing facility to transfer said data, said first data processing facility accessing said stored routing data associated with said first terminal and instructing said second data processing facility to transfer said data to be transferred to said second remote terminal using said routing data.

[0009] According to a second aspect of the invention, there is provided a system for enabling remote data transfer via a data transfer network, said system comprising: a data transfer network including a first data processing facility and a second data processing facility for storing data to be transferred,

[0010] a first terminal connected to said first data processing facility and to said second data processing facility via said network,

[0011] a second remote terminal connected to said network,

[0012] said first data processing facility including means for storing routing data associated with said first terminal for data transfer to said second remote terminal, said first data processing facility being adapted to use said routing data when instructed by said first terminal to transfer data from said second data processing facility to said remote terminal.

[0013] The invention enables a network operator to better manage customers expectations of bandwidth availability and perception of quality of service.

[0014] An embodiment of the invention will now be described with reference to the drawings, in which

[0015]FIG. 1 illustrates the general arrangement of the units participating in the service,

[0016]FIG. 2 is a flow diagram illustrating the steps carried out by the units participating in the service.

[0017] The embodiment to be described in detail is a service which allows a user to identify data on a mobile handset which he wishes to download and then download that data at a second terminal, for example at the user's home terminal.

[0018] The embodiment illustrated in FIG. 1 allows a user who is registered with the service with a standard mobile terminal 2, for example a mobile phone, a personal digital assistant (PDA), a laptop computer, or any communications apparatus with access to a cellular communications network 4, to identify a data file 7, for example an image or sound file (such as standard format files currently known as Joint Photographic Experts Group (JPEG), Motion Picture Experts Group (MPEG), MP3 etc.) located at a uniform resource locator (URL) address, using the mobile terminal and downloading that data to a second terminal, for example using file transfer protocol (FTP).

[0019] The user's mobile terminal 2 is in communication with a cellular server 6 via a cellular communications network 4 through which it may access a network of computers 10, typically various local area networks (LANs) connected to an information exchange network such as the internet 10 or a local exchange network such as an intranet. Communications and data exchange is managed by cellular server 4 using a database 8 which stores user service registration data. A user will normally have registered as a user of this data transfer service by indicating the particular remote terminal 14 linked to the internet 10 and to which data is to be transferred. The database then stores data identifying the user, the user's cellular handset 2 and associated therewith routing data or address data which identifies the second terminal 14. This database is preferably a lightweight directory access protocol (LDAP) database, which is structured specifically to facilitate looking up addresses. Such routing data or address data in particular data identifies a home server 12 via which the second terminal 14 is in communication with the internet. Such an address may be dynamically allocated by the home server when the user logs on via a home computer (as second remote terminal), as is the case for private users. Alternatively, it may be a dedicated URL address.

[0020] To enable remote data transfer a user must first have subscribed to the present service with the provider, e.g. the cellular network provider. The provider will secure managed access to the user's home PC using software which is either downloaded to the user's home server from a download facility, or may be accessed via a generic lookup server. The provider also enters the routing data into the LDAP database. When subscribing, the user may customize his settings, by specifying the extension mappings for different types of file downloads. Thus a movie or video file download and audio file downloads will require different MIME type extensions (.avi or .mov and .mp3 respectively).

[0021] An example of a download facility or generic lookup service is provided by JINI™ Java based network technology developed by Sun Microsystems, in which different devices (servers) offering different services connect together to form a community network on which all these services are freely available to outside users. This technology uses a lookup service with which devices and services register. An outside user uses the lookup service to locate services and download the relevant software.

[0022] A mobile user data transfer session is now detailed

[0023] Via the user's mobile handset, which may be a third generation (UMTS) or a WAP enabled handset, a user logs on to the remote data transfer service by submitting user specific data, such as username and password, to the cellular server, which may be a WAP proxy server. The cellular server then authenticates the user specific data against data stored in the LDAP database to ensure that the user subscribes to the present service, and accesses the remote terminal routing data associated with the submitted user specific data.

[0024] At this stage the user may also submit extensions for a desired session transfer format. For example, video and audio files may be found in a variety of formats depending on how the data has been digitised. Each format has a different “extension” associated with it, such as MP3, WAV or AU for audio files or “avi” or “.mov” for video files. In order for each of these files to be played at the remote location, the terminal at the remote location must be configured to process each format. The user has the option at this stage to submit the extensions, i.e. the format, in which he wishes data to be downloaded.

[0025] Once connected to the service the user then engages in a normal (WAP or UMTS) session, for example accessing various addresses on the internet.

[0026] Upon locating a desired file, for example a video file, the user selects the file on the cellular handset. This file will be associated with a URL address, to which the user is normally connected directly for data transfer (i.e. in non remote data transfer mode). The remote data transfer enabled cellular server translates the associated URL address to activate the relevant software at the home server. This is done, for example, by incorporating the associated URL as argument in a new URL address which points to download facility or lookup server selected at the home server. In this example, a video file with URL address

[0027] “http://www.vid.com/movie.avi”

[0028] becomes

[0029] “http://openworld.jini/proxy.java?url=http://www.vid.com/movie.avi&linktext=v ideo”

[0030] which activates the home server to access the relevant software to download the file of the desired format to the desired address. The portion of the rewritten url which reads “http://www.vid.com/movie.avi&linktext=video” is referred to as the arguments, and represents the data for download to the remote location.

[0031] The data exchange between the various units involved in the above embodiment may be realized as schematically shown in the flow diagram of FIG. 2. In step 20 the user via mobile handset 2 connects to the cellular server 6 to access a communications network such as the internet. At step 22 the cellular server 6 then queries the LDAP database 8 to look up the server 12 URL associated with a second terminal 14 to which the user has access. The server 12 may, for example, be the server associated with the user's home computer, i.e. the user's home server 12. The second terminal 14 is preferably one having a high bandwidth access. However, it is not limited in this respect and may also be a second cellular handset. At step 24, the LDAP database 8 returns the URL address associated with the second terminal 14 to the cellular server 6. This URL address received by the cellular server 6 in step 26 then enables the cellular server 6 to connect to the designated home server 12 to request a “service stub”. A “service stub” is information indicating how communication is to be conducted with the server 12. Devices in a network using Jini technology are linked together using Remote Method Invocation (RMI), which is a Java program. The RMI uses a “service stub” and “skeleton”. Both of these are software programs. The “service stub” is a small piece of code which tells the cellular server how to communicate with the skeleton, which is situated at the second server. At step 28, the “service stub” is returned from the home server 12 to the cellular server 6. Once the “service stub” has been received at the cellular server 6, it is able to communicate with the second server 14. Receipt of the stub causes the cellular server 6 at step 30 to pass the arguments, i.e the data for download at the remote location, to the user's Jini service at the user's home server 12. At step 32, the user's Jini service at the home server 12 downloads the file, for example, the video file as local thread process on the user's home PC 14, as shown in step 34. Once the arguments have been forwarded to the user's home server 12, the data for download may either be downloaded immediately to the user's PC 14. Alternatively, the data may be downloaded later, when the user next logs on to his home PC 14. 

1. A method of remote data transfer via a data transfer network comprising the steps of: storing at a first data processing facility routing data associated with a first terminal for data transfer to a second remote terminal, from said first terminal communicating via said first data processing facility data with said network, via said network identifying at said second data processing facility data to be transferred to said second remote terminal, instructing said second data processing facility via said first data processing facility to transfer said data, said first data processing facility accessing said stored routing data associated with said first terminal and instructing said second data processing facility to transfer said data to be transferred to said second remote terminal using said routing data
 2. A method according to claim 1 wherein in said identifying step address data is identified associated with said data to be transferred and wherein said first data processing facility instructs said second data processing facility to transfer said data to be transferred by combining said address data and said routing data.
 3. A method according to any preceding claim, in which said data transfer network is a cellular network.
 4. A method according to any preceding claim in which said first data processing facility is a cellular server.
 5. A method according to any preceding claim in which said second data processing facility is a server.
 6. A method according to any preceding claim wherein said first terminal is a cellular handset.
 7. A system for enabling remote data transfer via a data transfer network, said system comprising: a data transfer network including a first data processing facility and a second data processing facility for storing data to be transferred, a first terminal connected to said first data processing facility and to said second data processing facility via said network, a second remote terminal connected to said network, said first data processing facility including means for storing routing data associated with said first terminal for data transfer to said second remote terminal, said first data processing facility being adapted to use said routing data when instructed by said first terminal to transfer data from said second data processing facility to said remote terminal
 8. A system according to claim 7 wherein said second data processing facility is adapted to store data to be transferred in association with address data accessible via said network and wherein said first data processing facility further includes means for combining said routing data and said address data when said first terminal accesses said address data and instructs said first data processing facility to transfer said data to be transferred from said second data processing facility to said remote terminal.
 9. A system according to claims 7 or 8 in which said data transfer network is a cellular network.
 10. A system according to any of claims 7 to 9 in which said routing data is the address of a second data processing facility associated with said second terminal.
 11. A system according to any of claims 7 to 10 in which said first data processing facility is a cellular server.
 12. A system according to any of claims 7 to 11 in which said second data processing facility is a server.
 13. A system according to any of claims 7 to 12 wherein said first terminal is a cellular handset. 